﻿// 350. 标记祖先 Marked Ancestor（挑战程序设计竞赛）.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


using namespace std;


/*
* 
https://www.papamelon.com/problem/350


给定一棵树，结点从 1∼N 标号。1 作为整棵树的根。一开始的时候，1 被打上标记。

接下来会给我们 Q 个操作，有两种类型：

M v：对结点 v 打上标记
Q v：寻找一个离 v 最近的且已打上标记的祖先结点；v 被认为是自身的祖先
对于每个 Q 操作，我们都需要找出相应的祖先编号，但不需要直接输出。
最终我们是输出所有 Q 操作相加的总和。

输入
多组测试数据
每组测试数据格式如下：
第一行两个整数 N,Q(1≤N,Q≤10^5)，表示结点数量和操作数量
接下来 N-1 行，每行一个整数。表示从结点 2 开始。每个结点的父亲
最后以 N=0,Q=0 作为结束标记
输出
一组测试数据仅输出一行，表示所有 Q 操作的总和
样例 1
输入
6 3
1
1
2
3
3
Q 5
M 3
Q 5
0 0
输出
4
*/

int main()
{


	return 0;
}
 